#pragma once
#include "DirectoryTree.h"

namespace ja2{ namespace vfs
{
	//! Writeable directory location.
	class DirectoryTreeWrite : public DirectoryTree
	{
		// Operations
	public:
/*
		virtual FileProxy get_file(boost::filesystem::path const &File) const;
		//! See base.
		virtual bool file_exist(boost::filesystem::path const &File) const;
		//! See base.
		virtual boost::filesystem::path const &get_path() const;
		//! See base.
		virtual PathVector_t get_sub_dirs() const;
		//! See base.
		virtual Iterator begin();
		//! See base.
		virtual Iterator end();
		//! See base.
		virtual void add_file(FileDescriptorPtr_t &&pFileDesc, bool bDeleteOldFile = false);
		//! See base.
		virtual void create_subdirectory(boost::filesystem::path const &SubDir);
		//! See base.
		virtual void delete_subdirectory(boost::filesystem::path const& Dir);
		//! See base.
		virtual void delete_file(boost::filesystem::path const& File);
*/
		// Construction/Destruction
	public:
		JA2_VFS_API DirectoryTreeWrite(boost::filesystem::path const &MountPoint, boost::filesystem::path const &RealPath);
	};
} /*vfs*/} /*ja2*/
